package com.ruoyi.station.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * 光缆对象 s_optical_cable
 *
 * @author ruoyi
 * @date 2021-08-24
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@ApiModel(description = "光缆实体类")
@TableName("s_optical_cable")
public class SOpticalCable
{
    private static final long serialVersionUID=1L;

    /** 主键ID */
    @ApiModelProperty(value = "${comment}" )
    @TableId(value="ID" ,type = IdType.ASSIGN_UUID)
    private String id;

    /** 光缆名称 */
    @Excel(name = "光缆名称" )
    @ApiModelProperty(value = "光缆名称" )
    private String name;

    /** 所属区域 */
    @Excel(name = "所属区域" )
    @ApiModelProperty(value = "所属区域" )
    private String area;

    /** 类型 */
    @Excel(name = "类型" )
    @ApiModelProperty(value = "类型" )
    private String opticalCableType;

    /** 所属线路 */
    @Excel(name = "所属线路" )
    @ApiModelProperty(value = "所属线路" )
    private String affiliationLine;

    /** 长度 */
    @Excel(name = "长度" )
    @ApiModelProperty(value = "长度" )
    private String length;

    /** 光缆芯数 */
    @Excel(name = "光缆芯数" )
    @ApiModelProperty(value = "光缆芯数" )
    private String opticalCoreNum;

    /** 光缆线路 */
    @Excel(name = "光缆线路" )
    @ApiModelProperty(value = "光缆线路" )
    private String opticalLine;

    /** 起点资源类型 */
    @Excel(name = "起点资源类型" )
    @ApiModelProperty(value = "起点资源类型" )
    private String startSourceType;

    /** 起点资源 */
    @Excel(name = "起点资源" )
    @ApiModelProperty(value = "起点资源" )
    private String startSource;

    /** 终点资源类型 */
    @Excel(name = "终点资源类型" )
    @ApiModelProperty(value = "终点资源类型" )
    private String endSourceType;

    /** 终点资源 */
    @Excel(name = "终点资源" )
    @ApiModelProperty(value = "终点资源" )
    private String endSource;

    /** 产权单位 */
    @Excel(name = "产权单位" )
    @ApiModelProperty(value = "产权单位" )
    private String propertyUnit;

    /** 备注 */
    @Excel(name = "备注" )
    @ApiModelProperty(value = "备注" )
    private String remark;

    /** 创建者 */
    @TableField("create_by")
    private String createBy;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value = "create_time",fill = FieldFill.INSERT)
    private Date createTime;

    /** 更新者 */
    @TableField("update_by")
    private String updateBy;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @TableField(value =  "update_time",fill = FieldFill.UPDATE)
    private Date updateTime;

    /** 删除标志（0代表存在 2代表删除） */
    @ApiModelProperty(value = "删除标记" )
    @TableLogic(value = "0",delval = "2")
    private String delFlag;

    /** 照片 */
    @Excel(name = "照片" )
    @ApiModelProperty(value = "照片" )
    private String fileList;
}
